Skip to content

fix: require bun and rust for install#1792

Merged
merryman merged 6 commits intomainfrom
fix/require-bun-rust-install
Mar 31, 2026
Merged

fix: require bun and rust for install#1792
merryman merged 6 commits intomainfrom
fix/require-bun-rust-install

Conversation

@merryman
Copy link
Copy Markdown
Member

@merryman merryman commented Mar 26, 2026

Summary

  • fail install.sh early when Bun or the Rust toolchain is missing instead of using the untested fallback paths
  • print the correct Bun and Rust install commands, including the macOS xcode-select --install prerequisite for Rust
  • update setup docs and generated project workflow templates to provision Node 24, Bun, and Rust before calling install.sh

Closes #1789

Verification

  • bash -n install.sh
  • node --check lively.project/templates/test-action.js
  • node --check lively.project/templates/build-upload-action.js
  • node --check lively.project/templates/deploy-pages-action.js
  • smoke test: hide Bun from PATH and confirm install.sh exits with Bun install instructions
  • smoke test: keep Bun visible, hide Rust from PATH, and confirm install.sh exits with Rust install instructions

@merryman merryman force-pushed the fix/require-bun-rust-install branch 4 times, most recently from 9c2d2c4 to 9eae2ca Compare March 31, 2026 13:03
- Add ExportedImportCapturePass matching Babel's insertCapturesForExportedImports
- Implement function declaration wrapping via declarationWrapper (__define__)
  restricted to function declarations only (matching Babel's bundler behavior)
- Fix namespace transforms: import * as ns, export * from, export * as ns from
- Fix SyntaxContext preservation to prevent SWC hygiene renaming (Path→Path1)
- Fix __module_exports__ format to match Babel (per-specifier entries, __reexport__)
- Fix default export captures for all forms (decl, expr, literal)
- Harden __define__ runtime: only set .name on functions, guard metadata
- Add 163 Rust tests aligned with Babel's capturing-test.js test suite
- Loading screen builds and loads with 0 errors on both fastLoad modes
@merryman merryman force-pushed the fix/require-bun-rust-install branch from 9eae2ca to a30527e Compare March 31, 2026 16:21
- Add "module" and "import" to generator env conditions for proper
  ESM browser resolution
- Skip native binary packages (@rollup/rollup-*, @swc/core-*) and
  wildcard/git deps that can't resolve on jspm.io CDN
- Auto-pin transitive deps to available CDN versions when jspm.io 404s
- Log import map resolution failures for debugging
Modules like underscore export `hasOwnProperty` as a named export,
which shadows Object.prototype.hasOwnProperty on the renamedExports
object when populated via getExportDecls. Object.hasOwn is immune
to this since it doesn't go through the object's prototype chain.
@merryman merryman merged commit d65bd75 into main Mar 31, 2026
3 checks passed
@merryman merryman deleted the fix/require-bun-rust-install branch March 31, 2026 20:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

New version of Lively fails to install

1 participant